Modern high speed communication channels can be used for transmission of data using a variety of protocols and with multiple data rates. To support communications over these channels, clock and data recovery (CDR) circuits can be used to recover both clock and data from a data signal transmitted over a communication channel. The complexity of these CDR circuits continues to increase, which also increases the difficulty in testing and verifying the proper operation of these CDR circuits.